import axios from '@/request/http'
import { commonOutDTO, pageCommonInputDTO, pageCommonOutDTO } from '@/api/common.d'
import {
  WjclrwListQueryParam,
  WjclrwListQueryResult,
  WjcjrwxxxxListQueryResult,
  BatchRetryInputDTO,
  BatchRetryOutputDTO,
  AllRetryInputDTO,
  AllRetryOutputDTO,
  WjcfrwxxxxListQueryResult,
  OcrsbrwxxxxListQueryResult,
  WjzbrwxxxxListQueryResult,
  WjclrwxxxxListQueryParam,
  WjbdrwxxxxListQueryResult,
  WjcjrwglListQueryParam,
  WjcjrwglListQueryResult,
  WjcfrwglListQueryParam,
  WjcfrwglListQueryResult,
  OcrsbrwglListQueryParam,
  OcrsbrwglListQueryResult,
  WjzbrwglListQueryParam,
  WjzbrwglListQueryResult,
  WjdbrwglListQueryParam,
  WjdbrwglListQueryResult,
} from './rwgl-dto'

export default class rwglService {
  /**
   * 获取文件处理任务列表
   */
  static queryWjclrwList(
    data: pageCommonInputDTO<WjclrwListQueryParam>,
  ): Promise<commonOutDTO<pageCommonOutDTO<WjclrwListQueryResult[]>>> {
    return axios.post('/api/rwgl/queryWjclrwList', data)
  }

  // 文件处理任务-文件采集任务管理
  static queryWjcjrwglList(
    data: pageCommonInputDTO<WjcjrwglListQueryParam>,
  ): Promise<commonOutDTO<pageCommonOutDTO<WjcjrwglListQueryResult[]>>> {
    return axios.post('/api/rwgl/queryWjcjrwglList', data)
  }

  // 文件处理任务-文件拆分任务管理
  static queryWjcfrwglList(
    data: pageCommonInputDTO<WjcfrwglListQueryParam>,
  ): Promise<commonOutDTO<pageCommonOutDTO<WjcfrwglListQueryResult[]>>> {
    return axios.post('/api/rwgl/queryWjcfrwglList', data)
  }

  // 文件处理任务-OCR识别
  static queryOcrsbrwglList(
    data: pageCommonInputDTO<OcrsbrwglListQueryParam>,
  ): Promise<commonOutDTO<pageCommonOutDTO<OcrsbrwglListQueryResult[]>>> {
    return axios.post('/api/rwgl/queryOcrsbrwglList', data)
  }

  // 文件处理任务-文件转版任务管理
  static queryWjzbrwglList(
    data: pageCommonInputDTO<WjzbrwglListQueryParam>,
  ): Promise<commonOutDTO<pageCommonOutDTO<WjzbrwglListQueryResult[]>>> {
    return axios.post('/api/rwgl/queryWjzbrwglList', data)
  }

  // 文件处理任务-文件对比任务管理
  static queryWjdbrwglList(
    data: pageCommonInputDTO<WjdbrwglListQueryParam>,
  ): Promise<commonOutDTO<pageCommonOutDTO<WjdbrwglListQueryResult[]>>> {
    return axios.post('/api/rwgl/queryWjdbrwglList', data)
  }

  /**
   * 获取文件采集任务详细信息列表
   */
  static queryWjcjrwxxxxList(
    data: pageCommonInputDTO<WjclrwxxxxListQueryParam>,
  ): Promise<commonOutDTO<pageCommonOutDTO<WjcjrwxxxxListQueryResult[]>>> {
    return axios.post('/api/rwgl/queryWjcjrwxxxxList', data)
  }
  /**
   * 批量重试
   */
  static retryBatch(data: BatchRetryInputDTO): Promise<commonOutDTO<BatchRetryOutputDTO>> {
    return axios.post('/api/rwgl/retryBatch', data)
  }
  /**
   * 全案重采
   */
  static retryAll(data: AllRetryInputDTO): Promise<commonOutDTO<AllRetryOutputDTO>> {
    return axios.post('/api/rwgl/retryAll', data)
  }
  /**
   * 获取文件拆分任务详细信息列表
   */
  static queryWjcfrwxxxxList(
    data: pageCommonInputDTO<WjclrwxxxxListQueryParam>,
  ): Promise<commonOutDTO<pageCommonOutDTO<WjcfrwxxxxListQueryResult[]>>> {
    return axios.post('/api/rwgl/queryWjcfrwxxxxList', data)
  }
  /**
   * 获取OCR识别任务详细信息列表
   */
  static queryOcrsbrwxxxxList(
    data: pageCommonInputDTO<WjclrwxxxxListQueryParam>,
  ): Promise<commonOutDTO<pageCommonOutDTO<OcrsbrwxxxxListQueryResult[]>>> {
    return axios.post('/api/rwgl/queryOcrsbrwxxxxList', data)
  }
  /**
   * 获取文件转版任务详细信息列表
   */
  static queryWjzbrwxxxxList(
    data: pageCommonInputDTO<WjclrwxxxxListQueryParam>,
  ): Promise<commonOutDTO<pageCommonOutDTO<WjzbrwxxxxListQueryResult[]>>> {
    return axios.post('/api/rwgl/queryWjzbrwxxxxList', data)
  }
  /**
   * 获取文件比对任务详细信息列表
   */
  static queryWjbdrwxxxxList(
    data: pageCommonInputDTO<WjclrwxxxxListQueryParam>,
  ): Promise<commonOutDTO<pageCommonOutDTO<WjbdrwxxxxListQueryResult[]>>> {
    return axios.post('/api/rwgl/queryWjbdrwxxxxList', data)
  }
}
